<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- 
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

 http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License. 
-->
<html>
<head>
    <link type="text/css" rel="stylesheet" href="https://struts.apache.org/css/default.css">
    <style type="text/css">
        .dp-highlighter {
            width:95% !important;
        }
    </style>
    <style type="text/css">
        .footer {
            background-image:      url('https://cwiki.apache.org/confluence/images/border/border_bottom.gif');
            background-repeat:     repeat-x;
            background-position:   left top;
            padding-top:           4px;
            color:                 #666;
        }
    </style>
    <script type="text/javascript" language="javascript">
        var hide = null;
        var show = null;
        var children = null;

        function init() {
            /* Search form initialization */
            var form = document.forms['search'];
            if (form != null) {
                form.elements['domains'].value = location.hostname;
                form.elements['sitesearch'].value = location.hostname;
            }

            /* Children initialization */
            hide = document.getElementById('hide');
            show = document.getElementById('show');
            children = document.all != null ?
                    document.all['children'] :
                    document.getElementById('children');
            if (children != null) {
                children.style.display = 'none';
                show.style.display = 'inline';
                hide.style.display = 'none';
            }
        }

        function showChildren() {
            children.style.display = 'block';
            show.style.display = 'none';
            hide.style.display = 'inline';
        }

        function hideChildren() {
            children.style.display = 'none';
            show.style.display = 'inline';
            hide.style.display = 'none';
        }
    </script>
    <title>Can you suggest an elevator pitch</title>
</head>
<body onload="init()">
<table border="0" cellpadding="2" cellspacing="0" width="100%">
    <tr class="topBar">
        <td align="left" valign="middle" class="topBarDiv" align="left" nowrap>
            &nbsp;<a href="home.html">Home</a>&nbsp;&gt;&nbsp;<a href="faqs.html">FAQs</a>&nbsp;&gt;&nbsp;<a href="can-you-suggest-an-elevator-pitch.html">Can you suggest an elevator pitch</a>
        </td>
        <td align="right" valign="middle" nowrap>
            <form name="search" action="https://www.google.com/search" method="get">
                <input type="hidden" name="ie" value="UTF-8" />
                <input type="hidden" name="oe" value="UTF-8" />
                <input type="hidden" name="domains" value="" />
                <input type="hidden" name="sitesearch" value="" />
                <input type="text" name="q" maxlength="255" value="" />
                <input type="submit" name="btnG" value="Google Search" />
            </form>
        </td>
    </tr>
</table>

<div id="PageContent">
    <div class="pageheader" style="padding: 6px 0px 0px 0px;">
        <!-- We'll enable this once we figure out how to access (and save) the logo resource -->
        <!--img src="/wiki/images/confluence_logo.gif" style="float: left; margin: 4px 4px 4px 10px;" border="0"-->
        <div style="margin: 0px 10px 0px 10px" class="smalltext">Apache Struts 2 Documentation</div>
        <div style="margin: 0px 10px 8px 10px"  class="pagetitle">Can you suggest an elevator pitch</div>

        <div class="greynavbar" align="right" style="padding: 2px 10px; margin: 0px;">
            <a href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=14012">
                <img src="https://cwiki.apache.org/confluence/images/icons/notep_16.gif"
                     height="16" width="16" border="0" align="absmiddle" title="Edit Page"></a>
            <a href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=14012">Edit Page</a>
            &nbsp;
            <a href="https://cwiki.apache.org/confluence/pages/listpages.action?key=WW">
                <img src="https://cwiki.apache.org/confluence/images/icons/browse_space.gif"
                     height="16" width="16" border="0" align="absmiddle" title="Browse Space"></a>
            <a href="https://cwiki.apache.org/confluence/pages/listpages.action?key=WW">Browse Space</a>
            &nbsp;
            <a href="https://cwiki.apache.org/confluence/pages/createpage.action?spaceKey=WW&fromPageId=14012">
                <img src="https://cwiki.apache.org/confluence/images/icons/add_page_16.gif"
                     height="16" width="16" border="0" align="absmiddle" title="Add Page"></a>
            <a href="https://cwiki.apache.org/confluence/pages/createpage.action?spaceKey=WW&fromPageId=14012">Add Page</a>
            &nbsp;
            <a href="https://cwiki.apache.org/confluence/pages/createblogpost.action?spaceKey=WW&fromPageId=14012">
                <img src="https://cwiki.apache.org/confluence/images/icons/add_blogentry_16.gif"
                     height="16" width="16" border="0" align="absmiddle" title="Add News"></a>
            <a href="https://cwiki.apache.org/confluence/pages/createblogpost.action?spaceKey=WW&fromPageId=14012">Add News</a>
        </div>
    </div>

    <div class="pagecontent">
        <div class="wiki-content">
            <div id="ConfluenceContent"><p>
</p><p>Here's the Who, What, When, Where, and Why of Struts 2.</p>

<h3 id="Canyousuggestanelevatorpitch-Whoshouldusetheframework?">Who should use the framework?</h3>

<p>Struts 2 is designed to help Java web developers create enterprise-class applications using accepted industry standards and design patterns. </p>

<h3 id="Canyousuggestanelevatorpitch-Whatdoestheframeworkdo?">What does the framework do? </h3>

<p>The framework provides a flexible front controller and a set of custom tags. The controller's job is to map requests to actions.  This helps developers organize their business logic.  The Struts 2 tags help page authors create interactive pages. </p>

<h3 id="Canyousuggestanelevatorpitch-Howlonghavepeoplebeenusingtheframework?">How long have people been using the framework? </h3>

<p>The original Struts framework shipped in June 2001.  WebWork came out in March 2002 with the goal of improving Struts 1 and adopting the best ideas from other frameworks.  In December 2005, the WebWork and Struts communities joined forces to create the Struts 2 framework.  The initial release of Struts 2 is expected in the first quarter of 2007.</p>

<h3 id="Canyousuggestanelevatorpitch-Whereistheframeworkhosted?">Where is the framework hosted? </h3>

<p>Struts is a project of the Apache Software Foundation. The framework is made available to the public at no charge under the open source Apache License. The official Struts website is located at <a shape="rect" class="external-link" href="http://struts.apache.org">http://struts.apache.org</a>.</p>

<p><img class="emoticon emoticon-light-on" src="https://cwiki.apache.org/confluence/s/en_GB/5982/f2b47fb3d636c8bc9fd0b11c0ec6d0ae18646be7.1/_/images/icons/emoticons/lightbulb_on.png" data-emoticon-name="light-on" alt="(lightbulb)"> Visit the <a shape="rect" class="external-link" href="http://struts.apache.org/download.html">Struts download page</a> to obtain a distribution. </p>

<h3 id="Canyousuggestanelevatorpitch-Whyistheframeworkagoodchoiceformyapplication?">Why is the framework a good choice for my application? </h3>

<p><em>Reliability. Flexibility. Performance.</em> </p>

<p><strong>Reliability.</strong> The Struts project has been serving the Java web development community since May 2000.  We have earned a reputation for shipping software that is long on features and short on defects. </p>

<p><strong>Flexibility.</strong> The Struts 2 framework is designed to be pluggable from the ground up.  The controller's lifecycle can be customized for each application, and even for each action within an application.  The tag library is stylesheet-driven and easy to customize, either all at once or tag by tag.  Struts 2 does what you want it to do, but <em>only</em> what you want it to do. </p>

<p><strong>Performance.</strong> From field experience, we know that Struts-like, action-oriented frameworks perform well and are maintainable. </p>
</div>
        </div>

        
    </div>
</div>
<div class="footer">
    Generated by CXF SiteExporter
</div>
</body>
</html>
